package homework009;

import java.io.*;
import java.util.Objects;
import java.util.Scanner;

/**
 * 作业009
 *
 * cookie.txt
 * userinfo.txt
 * 1. 提前把账号密码写在里面，登录的时候要求用户输入，拿用户输入的信息和文件内容做比对
 * 2. 比对相同，则提示登录成功，会把当前登录信息写入cookie.txt（下次我再次启动项目，就不需要执行第一个步骤）
 *
 * @author itheima
 */
public class Main {
    public static void main(String[] args) throws IOException {

        //1. 读取cookie.txt文件的内容
        BufferedReader cookieReader = new BufferedReader(new FileReader("C:\\space-class\\27\\javase_homework\\src\\day17\\homework009\\cookie.txt"));
        String cookie = cookieReader.readLine();
        // debug是代码开发中调试作用，到了正式发布之后，隐藏掉
        // LOGGER.debug(cookie);
        cookieReader.close();

        //2. cookie有内容就输出信息
        if (Objects.nonNull(cookie) && !"".equals(cookie)) {
            // info是基本提示信息，用于追溯历史记录用信息
            // 日志分析
            // 用户行为分析
            // LOGGER.info("某某某时间，某用户，已登录");
            System.out.println("已登录");
            return;
        }

        //3. 读取userinfo.txt文件的内容
        BufferedReader userInfoReader = new BufferedReader(new FileReader("C:\\space-class\\27\\javase_homework\\src\\day17\\homework009\\userinfo.txt"));
        String userInfo = userInfoReader.readLine();
        // tom,123456

        // 根据,分割文件内容，得到用户名和密码
        String[] userInfoArray = userInfo.split(",");
        String fileUserName = userInfoArray[0];
        String filePassword = userInfoArray[1];

        //4. cookie没内容就提示用户输入
        Scanner scanner = new Scanner(System.in);
        String userName;
        String password;
        while (true) {
            System.out.println("请输入用户名");
            userName = scanner.nextLine();
            System.out.println("请输入密码");
            password = scanner.nextLine();

            if(Objects.isNull(userName)) {
                // 用户名不能为空
                // Logger.warning();
                continue;
            }

            if (!fileUserName.equals(userName)) {
                System.out.println("用户名不存在");
                continue;
            }

            if (!filePassword.equals(password)) {
                System.out.println("密码错误");
                continue;
            }

            System.out.println("登录成功");
            break;
        }

        //5. 将用户名和密码写入cookie，下次启动就不需要再操作登录了
        BufferedWriter writer = new BufferedWriter(new FileWriter("C:\\space-class\\27\\javase_homework\\src\\day17\\homework009\\cookie.txt"));
        writer.write(userName + "," + password);
        writer.newLine();
        writer.close();
    }
}
